﻿/*
五级记分 
Time Limit:1000MS  Memory Limit:32768K


Description:
将百分制的成绩以五级记分归类打印.五级记分的定义为：

A：90~100

B：80~89

C：70~79

D：60~69

E：<60
Input:
若干组数据,每组数据以一个整数n开头,表示后面有n个百分制成绩(不大于100的整数),如果n为0,表示处理结束. 
Output:
按五级记分方式从大到小归类打印每个成绩，打印同类成绩时，先打印类名，冒号，每个成绩都以空格开始，
若一类中没有成绩，则应有空栏，见样本输出。
每组成绩之间以空行间隔。 
Sample Input:
12
88 91 72 65 67 98 79 91 90 83 82 85
0
Sample Output:
A: 98 91 91 90
B: 88 85 83 82
C: 79 72
D: 67 65
E:
*/
// constructing multimaps
#include <iostream>
#include <vector>
#include <algorithm>
#include <functional>
using namespace std;

int main()
{

	for (unsigned n;cin>>n && n;)
	{
		vector<unsigned> credits[5];
		while (n--)
		{
			unsigned credit;
			cin>>credit;
			if(credit>=60)
				credits[9-credit/10].push_back(credit);
			else
				credits[4].push_back(credit);
		}
		for (unsigned i=0; i<5; i++ )
		{
			cout<<char('A'+i)<<":";
			sort(credits[i].begin(), credits[i].end(), greater<unsigned>());
			
			copy(credits[i].begin(), credits[i].end(), ostream_iterator<unsigned>(cout, " "));
			cout<<endl;
		}

	}
	

	return 0;
}